2ffd94b713b3f19f3e1992924af1bc94186b8519,community/src/main/java/org/neo4j/kernel/impl/transaction/xaframework/XaLogicalLog.java,XaLogicalLog,rotate,#,1280

Before Change


            fileChannel.position( getFirstStartEntry( endPosition ) );
        }
        LogEntry entry;
        Set<Integer> startEntriesWritten = new HashSet<Integer>();
        while ((entry = LogIoUtils.readEntry( buffer, fileChannel, cf )) != null )
        {
            if ( xidIdentMap.get( entry.getIdentifier() ) != null )
            {
                if ( entry instanceof LogEntry.Start )
                {
                    ((LogEntry.Start) entry).setStartPosition( newLog.position() );
                    startEntriesWritten.add( entry.getIdentifier() );
                }
                if ( !startEntriesWritten.contains( entry.getIdentifier() ) )
                {
                    throw new IOException( "Unable to rotate log since start entry for identifier[" +
                            entry.getIdentifier() + "] not written" );
                }
                LogBuffer newLogBuffer = new DirectLogBuffer( newLog, buffer );
                LogIoUtils.writeLogEntry( entry, newLogBuffer );

After Change


            {
                if ( entry instanceof LogEntry.Start )
                {
                    LogEntry.Start startEntry = (LogEntry.Start) entry;
                    startEntry.setStartPosition( newLog.position() );
                    // overwrite old start entry with new that has updated position
                    xidIdentMap.put( startEntry.getIdentifier(), startEntry );
                    // startEntriesWritten.add( entry.getIdentifier() );
                }
//                if ( !startEntriesWritten.contains( entry.getIdentifier() ) )